<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>

	<body>

		<script type="text/javascript">
			//1.看下面的代码，输出什么，foo的值为什么？

			var foo = "11" + 2 - "1";
			console.log(foo);
			console.log(typeof foo);

			//2.查找ABCDEFGHIJKLM在第8位的字符      string.charAt()
			var str0 = "ABCDEFGHIJKLM";
			var res0 = str.charAt(8);
			alert(res1);

			//3.查找ABCDEFGHIJKLM在第10位字符的字符码位      string.chartCodeAt()
			var str1 = "ABCDEFGHIJKLM";
			var res1 = str.charCodeAt(10); //K是75
			alert(res1);

			//4.将字符串Blue与字符J合并起来，形成新字符串BlueJ    string.concat()

			var a = "Blue"
			b = "J";
			var res2 = a.concat(b);
			alert(res2); //BlueJ,一般用+字符串
			//5. 在字符串Mississippi里查找字符串ip首次出现的位置     string.indexOf()
			var text = "Mississippi";
			var p = text.indexOf("ip");
			alert(p); //7

			//6.在字符串Mississippi里从尾部开始查找，is首次出现的位置   string.lastIndexOf()
			var text2 = "Mississippi";
			var p2 = text.lastIndexOf("is");
			alert(p2); //4

			//7.一串属于我们的密码"n&i$$zh#en*b@a$()*ng(2!###&33",找出所有英文和数字   string.match()

			var test = "n&i$$zh#en*b@a$()*ng(2!###&33"
			var p = test.match(/(\w)/g);
			alert(p);
			//8.字符串It's time to Sleep,将"Sleep"，替换成其他字符串      string.replace()

			var str = "It's time to Sleep"
			var str2 = str.replace("Sleep", "work");
			alert(str2);
			/*9.有段文字text='and in it he says "Any damn fool could'
				不改变原text的前提下，提取第一段话a="Any damn fool could',
				第二段话b = "and",第三段话c="could"、
				注意，slice()可以接受负数
				string.slice()
			*/

			var text = 'and in it he says "Any damn fool could';
			var a = text.slice(18);
			var b = text.slice(0, 3);
			var c = text.slice(-5);
			alert("第一段话" + a);
			alert("第二段话" + b);
			alert("第三段话" + c);

			/*10.字符串digite="0123456789",把前5个字符分割出来，返回个单字符的数组
				注意，返回数组里面的数字是字符串类型
			 *  string.split()
			*/
			var digite = "0123456789";
			var a = digite.split("", 5);
			alert(a);
			//11.将字符串"TextAligin"，的英文字母全部转换为小写格式  string.toLowerCase()

			var text = TextAligin.toLowerCase();
			alert(text);

			//12.将字符串"TextAligin"，的英文字母全部转换为大写格式  string.toUpperCase()

			var text = "TextAligin".toUpperCase();
			alert(text);
			//13.已知有字符串foo=”get-element-by-id”,写一个function将其转化成驼峰表示法”getElementById”。

			function combo(msg) {
				var arr = msg.split("-");
				for(var i = 1; i < arr.length; i++) {
					arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].substr(1, arr[i].length - 1);
				}
				msg = arr.join("");
				return msg;
			}

			/*
			 定义一个函数，有两个参数，参数1，传入要处理的字符串，参数2，传入要搜索的字符
			思路：0，考虑到 indexOf的限制，无法一次性判断字符串多次出现的位置，所以我们要用到循环
				  1.通过indexOf查找目标首次出现的位置
				  2.拿到位置后，推算出剩余没有被判断的字符串，并将其抽取出来
				  3.继续重复第一步
				  4.直到所有关键字全部搜索完毕，得到关键词总共出现的次数。
		
			 * */
			function get_str_repeat(string, search) {
				//请在这里写对应的函数代码
			}
			alert(get_str_repeat("今天是什么鬼天气，这么热，明天要去游泳！", "今天"));

			//扩展题目，定义一个可以批量的替换目标字符串的函数
			function get_str_repeat2(string, search, replace) {
				//请在这里写对应的函数代码
			}
			alert(get_str_repeat2("今天是什么鬼天气，这么热，明天要去游泳！", "天", "日"));
		</script>
	</body>

</html>